Tootsville::Infinity-Quiesce

Function

Infinity-Quiesce names a function, with lambda list (D TOOT R):

Quiesce Toot values to database for logout, or periodically as a backup.

Lisp QUIESCE = JSON quiesce

Usage

{ wtl: { course: { ... }, facing: RADIANS },
  d3: { ... },
  emotion: "EXPRESSION",
  world: "WORLD",
  latitude: LAT,
  longitude: LONG,
  altitude: ALT }

Facing may be provided as per TOOTSVILLE INTERPRET-FACING.

A quiescent copy of the character information will be saved in a central database. Should the player lose connection and not successfully reconnect, eg. should the player quit by closing their browser altogether, or lose Internet connectivity, &c., the last quiesced form of their character will be restored when they reconnect.

Note that, as with the rest of the system, we are currently using wtl but are building up the infrastructure for d3 walking in future. When both a wtl and a d3 value exist, the d3 value supersedes the wtl. d walking values must be encoded in wtl form, but d walking values are not expected in Tootsville V.

Status 200 OK

Upon success, the client whose status was saved is notified by a message of the form:

{ from: "quiesce",
  status: true }

Asynchronous periodic demands

From time to time, clients may be asked to update their quiescent state. When a client receives a message of the form:

{ from: "quiesce",
  status: false }

… they are expected to submit a quiesce message to the central servers.

File

Defined in file src/infinity/new-commands-20.lisp.